/************************* 版权声明 *********************************
 * 
 * 版权所有：Apache License 2.0
 * 
 ************************* 版本声明 *********************************
 *@since jdk1.5
 *@version 0.1
 ************************* 变更记录 *********************************
 *
 * 创建者：bijiqiang Email:bijiqiang@gmail.com   创建日期： 2010-01-10
 * 创建记录：创建类结构。
 * 
 * 修改者：       修改日期：
 * 修改记录：
 *
 * 修改者：       修改日期：
 * 修改记录：
 * ……
 ************************* To  Do *********************************
 *
 * 1、实现所有未实现的方法（抛出UnsupportedOperationException的方法）。
 * 
 ************************* 随   笔 *********************************
 *
 * 
 * 
 ******************************************************************
 */
package com.realgodo.site.web.space;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Scope;

import com.realgodo.site.entity.application.show.Show;
import com.realgodo.site.entity.relation.FriendConfig;
import com.realgodo.site.entity.relation.Relation;
import com.realgodo.site.entity.space.SpaceCover;
import com.realgodo.site.service.UserManager;
import com.realgodo.site.service.application.ShowManager;
import com.realgodo.site.service.relation.FriendConfigManager;
import com.realgodo.site.service.space.SpaceCoverManager;

@Scope("prototype")
public class IndexController extends SpaceDefaultController {

	private static final long serialVersionUID = 1225210859568443074L;

	@Autowired
	private SpaceCoverManager spaceCoverManager;

	@Autowired
	private UserManager userManager;
	@Autowired
	private ShowManager showManager;
	@Autowired
	private FriendConfigManager friendCinfigManager;
	
	private List<FriendConfig> friendConfigList;

	public String execute() throws Exception {
		this.userManager.visitCount(super.getVSpace().getId());
		return SUCCESS;
	}

	/**展示首页顶级朋友*/
	private String top(){
		super.getParamMap().put("spaceId", super.getVSpace().getId().toString());
		super.getParamMap().put("status", String.valueOf(Relation.STATUS_AGREE));
		super.getParamMap().put("isTop", String.valueOf(FriendConfig.IS));
		friendConfigList=friendCinfigManager.find(super.getParamMap());
		return SUCCESS;
	}
	public List<SpaceCover> getSpaceCovers() {
		return this.spaceCoverManager.getSpaceCovers(super.getVSpace().getId(),6);
	}

	public Show getMyTopShow() {
		return this.showManager.getMyTopShow(super.getVSpace().getId());
	}

	public Long getShowCount() {
		return this.showManager.getShowCount(super.getVSpace().getId());
	}

	public List<FriendConfig> getFriendConfigList() {
		if(friendConfigList==null){
			top();
		}
		return friendConfigList;
	}
	
	
}
